home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / elec_eng / eepddsk4.lzh / LOZD-TUN.ASC < prev    next >
Text File  |  1986-04-16  |  5KB  |  165 lines

  1. 10 REM
  2. 20 REM                      LOW-Z DOUBLE-TUNED CIRCUIT DESIGN
  3. 30 REM                      ---------------------------------
  4. 40 REM                             BY KEVIN MCCLANING
  5. 50 REM
  6. 60 REM     THIS PROGRAM IS BASED ON THE ARTICLE "LOW-IMPEDANCE DOUBLE-
  7. 70 REM TUNED CIRCUITS" BY ANDRZEJ PRZEDPEISKI, RF DESIGN MAGAZINE,
  8. 80 REM MAY/JUNE 1982, PG 24.
  9. 90 REM
  10. 100 REM
  11. 110 CLS:PRINT
  12. 120 PRINT"                 LOW-Z DOUBLE-TUNED CIRCUIT DESIGN"
  13. 130 PRINT"                 ---------------------------------"
  14. 140 PRINT
  15. 150 PRINT "    THIS PROGRAM ALLOWS THE USER TO DESIGN DOUBLE-TUNED CIRCUITS"
  16. 160 PRINT "FROM USER-SUPPLIED PARAMETERS.  THE CIRCUITS HERE ARE DUAL"
  17. 170 PRINT "L-C NETWORKS, CAPACITIVELY COUPLED."
  18. 180 REM
  19. 190 PI = 3.1415926535#
  20. 200 TWOPI = 2*PI
  21. 210 REM
  22. 220 REM
  23. 230 REM
  24. 240 REM         DEFINE A NEW NETWORK
  25. 250 REM
  26. 260 REM
  27. 270 REM
  28. 280 GOSUB 820:PRINT
  29. 290 PRINT "DEFINE A NEW NETWORK":PRINT
  30. 300 GOSUB 860:                          REM GET THE CENTER FREQ
  31. 310 GOSUB 890:                          REM GET SOURCE IMPEDENCE
  32. 320 GOSUB 920:                          REM GET LOAD IMPEDENCE
  33. 330 GOSUB 950:                          REM GET INDUCTANCE
  34. 340 GOSUB 980:                          REM GET INDUCTOR Q
  35. 350 GOSUB 1010:                          REM GET CIRCUIT Q
  36. 360 GOSUB 1250:                          REM CALCULATE
  37. 370 GOSUB 1040                           REM OUTPUT TO SCREEN
  38. 380 PRINT "WHAT'LL IT BE:"
  39. 390 PRINT "  1 - TWIDDLE WITH A PARAMETER"
  40. 400 PRINT "  2 - DESIGN A NEW NETWORK"
  41. 410 PRINT "  3 - PRINT"
  42. 420 PRINT "  4 - END"
  43. 430 INPUT ANS
  44. 440 IF ANS = 1 THEN 490
  45. 450 IF ANS = 2 THEN GOSUB 180:GOTO 380
  46. 460 IF ANS = 3 THEN GOSUB 1450:GOSUB 820:GOTO 380
  47. 470 IF ANS = 4 THEN CLS:END
  48. 480 BEEP:GOTO 380
  49. 490 REM
  50. 500 REM
  51. 510 REM
  52. 520 REM
  53. 530 REM             TWIDDLE WITH A PARAMETER
  54. 540 REM
  55. 550 REM
  56. 560 REM
  57. 570 GOSUB 820
  58. 580 PRINT "WHICH PARAMETER WOULD YOU LIKE TO TWIDDLE"
  59. 590 PRINT "  1 - CENTER FREQ"
  60. 600 PRINT "  2 - SOURCE IMPEDENCE"
  61. 610 PRINT "  3 - LOAD IMPEDENCE"
  62. 620 PRINT "  4 - INDUCTANCE"
  63. 630 PRINT "  5 - INDUCTOR Q"
  64. 640 PRINT "  6 - CIRCUIT Q"
  65. 650 PRINT "  7 - MAIN MENU"
  66. 660 INPUT ANS
  67. 670 IF ANS = 1 THEN GOSUB 860:GOSUB 1250:GOSUB 1040:GOTO 580
  68. 680 IF ANS = 2 THEN GOSUB 890:GOSUB 1250:GOSUB 1040:GOTO 580
  69. 690 IF ANS = 3 THEN GOSUB 920:GOSUB 1250:GOSUB 1040:GOTO 580
  70. 700 IF ANS = 4 THEN GOSUB 950:GOSUB 1250:GOSUB 1040:GOTO 580
  71. 710 IF ANS = 5 THEN GOSUB 980:GOSUB 1250:GOSUB 1040:GOTO 580
  72. 720 IF ANS = 6 THEN GOSUB 1010:GOSUB 1250:GOSUB 1040:GOTO 580
  73. 730 IF ANS = 7 THEN GOSUB 820:GOTO 380
  74. 740 BEEP:GOTO 580
  75. 750 REM
  76. 760 REM
  77. 770 REM
  78. 780 REM              SUBROUTINES
  79. 790 REM
  80. 800 REM
  81. 810 REM
  82. 820 PRINT "----------------------------":RETURN
  83. 830 REM
  84. 840 LPRINT "----------------------------":RETURN
  85. 850 REM
  86. 860 INPUT "ENTER DESIRED CENTER FREQ (MHz)";F0:F0 = F0*1000000!
  87. 870 RETURN
  88. 880 REM
  89. 890 INPUT "ENTER SOURCE IMPEDANCE (OHMS)";RS
  90. 900 RETURN
  91. 910 REM
  92. 920 INPUT "ENTER LOAD IMPEDANCE (OHMS)";R0
  93. 930 RETURN
  94. 940 REM
  95. 950 INPUT "ENTER INDUCTANCE (uH)";L:L = L*.000001
  96. 960 RETURN
  97. 970 REM
  98. 980 INPUT "ENTER TYPICAL INDUCTOR Q";QL:QL = ABS(QL)
  99. 990 RETURN
  100. 1000 REM
  101. 1010 INPUT "ENTER DESIRED CIRCUIT Q";Q0:Q0 = ABS(Q0)
  102. 1020 RETURN
  103. 1030 REM
  104. 1040 GOSUB 820
  105. 1050 PRINT "DOUBLE-TUNED CIRCUIT"
  106. 1060 PRINT "    CENTER FREQ = ";(INT(F0/10000!))/100;" MHz"
  107. 1070 PRINT "    SOURCE IMPEDENCE = ";RS;" OHMS"
  108. 1080 PRINT "    LOAD IMPEDENCE = ";R0;" OHMS"
  109. 1090 PRINT "    INDUCTANCE = ";L*1000000!;" uH"
  110. 1100 PRINT "    INDUCTOR Q = ";QL
  111. 1110 PRINT "    CIRCUIT Q = ";Q0
  112. 1120 PRINT "    XL = ";XL;"     L = ";INT(L*1E+08)/100;" uH"
  113. 1130 PRINT "    X1 = ";X1;"    C1 = ";INT(C1*1E+14)/100;" pF"
  114. 1140 PRINT "    X2 = ";X2;"    C2 = ";INT(C2*1E+14)/100;" pF"
  115. 1150 PRINT "    X3 = ";X3;"    C3 = ";INT(C3*1E+14)/100;" pF"
  116. 1160 PRINT "    X4 = ";X4;"    C4 = ";INT(C4*1E+14)/100;" pF"
  117. 1170 PRINT "    X5 = ";X5;"    C5 = ";INT(C5*1E+14)/100;" pF"
  118. 1180 GOSUB 820:RETURN
  119. 1190 REM
  120. 1200 REM
  121. 1210 REM
  122. 1220 REM  MAIN CALCULATION LOOP
  123. 1230 REM
  124. 1240 REM
  125. 1250 XL = TWOPI*F0*L
  126. 1260 RL = QL*XL
  127. 1270 R8 = Q0*XL
  128. 1280 X3 = -R8
  129. 1290 RT = RL*Q0*XL/(RL-(Q0*XL))
  130. 1300 XT = X3/(Q0-1)
  131. 1310 R1  = RT/(1+(RT*RT/(XT*XT)))
  132. 1320 X1 = 0-SQR(R1*RS*RS/(RS-R1))
  133. 1330 X5 = -SQR(R1*R0*R0/(R0-R1))
  134. 1340 X2PLUSX6 = (RT*RT/XT)/(1+(RT*RT/(XT*XT))):X4PLUSX7 = X2PLUSX6
  135. 1350 X6 = (RS*RS/X1)/(1+(RS*RS/(X1*X1)))
  136. 1360 X2 = X2PLUSX6-X6
  137. 1370 X7 = (R0*R0/X5)/(1+(R0*R0/(X5*X5)))
  138. 1380 X4 = X4PLUSX7-X7
  139. 1390 C1 = -1/(TWOPI*F0*X1)
  140. 1400 C2 = -1/(TWOPI*F0*X2)
  141. 1410 C3 = -1/(TWOPI*F0*X3)
  142. 1420 C4 = -1/(TWOPI*F0*X4)
  143. 1430 C5 = -1/(TWOPI*F0*X5)
  144. 1440 RETURN
  145. 1450 REM
  146. 1460 REM
  147. 1470 REM
  148. 1480 REM
  149. 1490 REM
  150. 1500 GOSUB 840
  151. 1510 LPRINT "DOUBLE-TUNED CIRCUIT"
  152. 1520 LPRINT "    CENTER FREQ = ";INT(F0/10000!)/100
  153. 1530 LPRINT "    SOURCE IMPEDENCE = ";RS
  154. 1540 LPRINT "    LOAD IMPEDENCE = ";R0
  155. 1550 LPRINT "    INDUCTOR Q = ";QL
  156. 1560 LPRINT "    CIRCUIT Q = ";Q0
  157. 1570 LPRINT "    XL = ";XL;"     L = ";INT(L*1E+08)/100;" uH"
  158. 1580 LPRINT "    X1 = ";X1;"    C1 = ";INT(C1*1E+14)/100;" pF"
  159. 1590 LPRINT "    X2 = ";X2;"    C2 = ";INT(C2*1E+14)/100;" pF"
  160. 1600 LPRINT "    X3 = ";X3;"    C3 = ";INT(C3*1E+14)/100;" pF"
  161. 1610 LPRINT "    X4 = ";X4;"    C4 = ";INT(C4*1E+14)/100;" pF"
  162. 1620 LPRINT "    X5 = ";X5;"    C5 = ";INT(C5*1E+14)/100;" pF"
  163. 1630 GOSUB 840:RETURN
  164. 1640 REM
  165.